A telecommunications system establishes a communication path that allows information to be exchanged between parties at locations remote from one another. Modern telecommunications systems provide for more than voice-to-voice communication, encompassing electronic mail exchanges, data file transfers, and a host of other communication modes. As modern telecommunications systems continue to evolve, there is a move away from traditional circuit-switched networks toward internet protocol (IP) networks.
Telecommunication over an IP network can be accomplished using a conventional telephone, a computer, or other type of processor. Depending on the service provider, the caller may have to dial in a special code as a way of routing the call to the service provider. Initially, the call is carried just as any other over a Public Switched Telephone Network (PSTN). The call, however, is then sent to an IP gateway, typically a server and server software that may be maintained by a local service provider.
The gateway converts the call into digital data and compresses the data so that the resulting data files can be carried rapidly to a second IP gateway nearest to the destination of the call. The second gateway takes the packets, decompresses them, converts them to their original analog form and sends them through the PSTN. Other forms of data, besides voice data, can similarly be communicated between gateways. The result has been a convergence of traditional telecommunication networks and traditional data networks.
Multiple processors can be connected to a common gateway to form an IP sub-network, with each processor having an IP address. U.S. Pat. No. 6,249,820 B1 to Dobbins et al., for example, discloses a method of IP addressing in which multiple processors (hosts) are grouped by a common address associated with a router. Accordingly, the IP address of each processor or host can include a sub-network portion associated with the particular sub-network and a portion identifying each particular processor connected to the same gateway.
Each of the processors that are part of a distinct IP sub-network can communicate with entities outside the IP sub-network through the gateway, which connects to other networks. These communications can be controlled with the use of a common channel signaling system, such as the SS7 system based on a protocol established by the International Telecommunications Union's Telecommunications Standardization Sector (ITU-T).
In general a common channel signaling system is a signaling system in which a traffic line and signaling line are managed separately to transmit a signal for a call through the signaling line. With such a system signaling messages are used for call set-up, teardown, and routing, as well as for the exchange of information regarding caller identification (e.g., identifying a mobile phone by its serial number) and for service billing.
These signaling messages (i.e., signaling traffic) can be routed over the IP sub-network. More specifically, a signaling message can be routed on the basis of a sub-network processor's IP address. Published U.S. Patent Application 2001/0055380 A1 to Benedyk et al., for example, discloses a method of routing signaling messages in a converged telephony-data network based upon registration of routing keys. The routing key can be an originating point code, destination point code, or similar type of identifier that is registered with a gateway. Conventional systems also rely on storing point code in a database or look-up table for routing signaling messages among processors over the IP sub-network.
With conventional systems, therefore, a gateway serving multiple processors must be configured to associate a point code with an IP address to route SS7 or other signaling messages over the subnetwork. Among the problems with such routing is that each signaling message must include additional, complex 5 addressing layers to accommodate at least one point code corresponding to a signaling message and processor.
An even more burdensome problem is that the gateway device typically includes a large, complex look-up table to record and relate each point code or identifier with the corresponding signaling message and processor. Such a look-up table is not only cumbersome to construct, but must be maintained with at least some level of fault resiliency. Routing signaling messages, moreover, is accordingly more complex. Routing requires that the gateway record the point code for an outgoing or initial message. When a response message is received, the gateway must search the look-up table to find the corresponding point code before it can route the response message to the correct processor.